package com.shop.cloud.domain.hongfu;

import java.sql.Timestamp;
import java.util.Date;
import java.math.BigDecimal;

import org.apache.commons.lang3.builder.ToStringBuilder;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.shop.cloud.common.mapper.OffsetDateTimeToIso8601Serializer;
import com.shop.cloud.common.mybatis.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 
 * user_login_history-user_login_history
 *
 */
@ToString
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class UserLoginHistory extends BaseEntity{

	private static final long serialVersionUID = 1L;
	
	public static final int ACCOUNT_TYPE_PHONE = 1; // 1：普通手机号
	public static final int ACCOUNT_TYPE_QQ = 2; // 2：qq账号
	public static final int ACCOUNT_TYPE_WEIXIN = 3; // 3：微信账号
	public static final int ACCOUNT_TYPE_WEIBO = 4; // 4：微博账号
	
	public static final int LOGIN_STATUS_NO_LOGOUT = 1; // 1：未注销
	public static final int LOGIN_STATUS_LOGOUT = 2; // 2：已注销
	/**
	 * 用户id
	 */
	@ApiModelProperty(value = "用户id")
	 private Long userId;
	/**
	 * 登录类型
1：普通手机号
2：qq账号
3：微信账号
4：微博账号
	 */
	@ApiModelProperty(value = "登录类型1：普通手机号2：qq账号3：微信账号4：微博账号")
	 private Integer type;
	/**
	 * 登录时间
	 */
	@ApiModelProperty(value = "登录时间")
	private Timestamp loginTime;
	/**
	 * 注销时间
	 */
	@ApiModelProperty(value = "注销时间")
	private Timestamp logoutTime;
	/**
	 * 状态：
1：未注销
2：已注销
	 */
	@ApiModelProperty(value = "状态：1：未注销2：已注销")
	 private Integer status;
    
    public UserLoginHistory(){
    
    }
    
    public Long getUserId() {
        return this.userId;
    }
    
    public void setUserId(Long userId) {
        this.userId = userId;
    }
    public Integer getType() {
        return this.type;
    }
    
    public void setType(Integer type) {
        this.type = type;
    }
    public Timestamp getLoginTime() {
        return this.loginTime;
    }
    
    public void setLoginTime(Timestamp loginTime) {
        this.loginTime = loginTime;
    }
    public Timestamp getLogoutTime() {
        return this.logoutTime;
    }
    
    public void setLogoutTime(Timestamp logoutTime) {
        this.logoutTime = logoutTime;
    }
    public Integer getStatus() {
        return this.status;
    }
    
    public void setStatus(Integer status) {
        this.status = status;
    }

}